Hi folks, so this has been one of those weeks when it is suddenly Friday afternoon and you are wondering where did the week go. Fortunately there are the Friday Facts to put myself together and retrace the events=)) The Grey Zone At the moment we are kind of in a grey zone. The 0.12 bugs are more or less solved (though there is still some "popping up" of new issues) and the full speed work on 0.13 hasn't started yet (actually not even slow speed work has started). We are finishing with little (often technical debt) tasks from our internal lists. There is just ton of issues like: fixing locale fonts, updating tips and tricks, writing tests for compilcated existing functionality, tweaking our automatic deployment and testing setup, auto-generating the Lua API documentation, fixing sound glitches, etc. The list goes on. One of the tasks has been related to our headless binary. This is the binary to run on linux servers without graphics card. This is now available in the downloads section alongside other releases. There is a small convenience difference where by clicking the download, the resulting download link (from one of our cdn servers) is valid for 10 minutes (instead of regular 10 seconds) so the server owner can conveniently copy this url and download the game directly from the server. In the future we plan to have the updater work for headless servers as well so that will make things even more convenient. The good news is that the list of these little tasks is getting shorter. Also we have already more or less agreed on distribution of big tasks for the 0.13. These have been discussed in the past and are also visible at our roadmap. Some work on these should start already next week. We will keep you up to date=)
Hello, the 0.14 stabilization is still ongoing, we are in the final stretch now and hope our latest release might be declared stable soon, along with a marketing push on steam. Until then here is some news about ongoing developments this week:
The programmable speaker There has always been some talk around the office about a music box that can be used to make simple sounds, you could even connect it to the circuit network and make simple songs. I put it on my long list of circuit network ideas, and in the past few week it has been coming to life. So today I'll be talking about an exciting new entity coming in 0.15: the Programmable Speaker. It was designed to do two main things: Show configurable GUI alerts and play audio alerts based on circuit conditions. Play audio samples as controlled by the circuit network in a way that simple songs can be created. The entity graphics are placeholder programmer graphics. Let's start with the useful part, it's pretty straightforward. You set your circuit condition, set the sound you want it to make, set whether the sound should be heard in that part of the factory or across the entire map and add an optional GUI alert message. When the circuit condition is true, the speaker will play the selected sound and show the optional GUI alert. You can let the sound play continuously or use simple combinator logic to make the sound at custom intervals. And now that fun part. We knew we wanted the Programmable Speaker to be able to make simple songs. Crazy ideas started to pour in, and it was quickly becoming a full-blown music production DAW with custom synthesizers and control over everything. But this has to be easily controlled by the circuit network without having to build real-time computers with combinators. So in the end I made the Programmable Speaker work as a step sequencer. If you send a circuit network signal pulse, an audio sample will start playing, otherwise nothing will happen. There is no control over the sample length or any special effects, but this means it is quite easy to control it using the circuit network. Enough talk. Here is a demo of a song made using the samples already included. Everything you hear is created inside Factorio. I will leave it to you to analyze the video and figure out how the song is generated. Modders can easily add more audio samples to the entity, including custom alerts. I imagine there will be a voice pack mod that could be programmed using combinators to speak things like "Crude oil is low". I'm sure the Programmable Speaker will be part of some very interesting posts on the Factorio Reddit. There are some other circuit network improvements coming to 0.15, but I will talk more about them in some other FFF. The map download struggle (Technical) For as long as I can remember, our multiplayer map downloader had (among other problems) the problem that it would get stuck at 100%. It was an extremely rare problem some random person would report. We would keep ignoring the bug throwing it in "Pending" or "Duplicates" or "1/0 Magic", but after a few months some other person would report it again. I seem to have a habit of obsessing over these rare "unfixable" bugs (audio mixer crashing, vsync performance issues, non-pixel-perfect sprite drawing), so I started looking into this map downloader issue. First I was looking at the map downloader code itself, thinking surely there is something wrong there. This was a long process because I had no way of reproducing the issue, so it usually involved going back and forth with a person who was experiencing the issue. I would create an executable that would create detailed logs, that person would run the game using that, I would investigate the logs and see that our map downloader works correctly. The I would add more logging and so on. By the time I would reach some kind of conclusion that person would stop answering and probably stop playing Factorio. But near the end thanks to some helpful players, I was able to see what was happening. Looking at the wireshark capture for both the client and the server, it seems that a packet with a specific content or a specific checksum always gets filtered. Some cheeky firewall from the computer, router or ISP is looking inside the packet data and blocking the packets it does not like. No matter how many times I resend that packet, it never gets through, while all the other hundreds of thousands of game and map packets have no problem getting through. Correct me if I'm wrong, but something like this should not be happening. You can read all the details and see the packet data last posts of the forum topic. The issue seems to be resolved if I add one byte of random data to the packet, but I would like to know why is this happening in the first place. If you know what is happening or you know someone that might, please don't hesitate to enlighten us :) This shows how hard it is to make software that "just works" for everyone. There will always be that 0.1% of people who end up having problems that no one could have ever foreseen. Big thanks to admalledd, dadymax, Rippie and the other forum members who helped or are still helping me investigate this odd issue. In other good news, while Rseding91 was also looking at the map download code trying to investigate this problem, he found we had some slow code doing hard drive seeking, slowing down map uploads. He improved it and you should see better map transfer speeds on LAN and high speed connections. As usual, let us know what you think at the forums.
New hope demo levels Klonan A few weeks ago we discussed the changes to the demo and tutorial in the game (FFF-342). One piece of feedback we received after publishing the news was about the old 'New hope' campaign levels, and specifically the 'Abandoned rail base/Broken rail map'. It seems a lot of you in the community really really enjoyed the new hope campaign levels, and several of the team here share the same feelings. After we scrapped the plans for a new campaign and reverted to the old demo, we had initially dismissed the idea to revive the New hope campaign... However due to popular demand... we have decided to bring back the favourites, the first 2 levels of the new hope campaign. This time though, they will also be included in the demo version of the game. This represents a very significant increase in scope for the demo, increasing the demo content to include research, red science, green science, trains, and much more. These levels should be ready for release within a week (but no promises).
Hello, we usually show finished stuff in Friday facts these days, but I personally always liked to have a peek behind the curtains and see the (temporary) mess there. This motivated me to do some kind of overview of how the overall expansion development felt from my perspective. If you are like me, you might appreciate it. Our story starts in February 2021 with FFF-365 when we announced the plan to do the expansion pack.
Dear all, Version 0.16 has become stable, and this means that there is one last step for us to reach the 0.17 which will probably become 1.0 version. Then Factorio will finally step out of the Early Access zone. This will take some months but the roadmap is clear for us. We feel that now is a good time to adjust the price of the game. The price of the game has been growing steadily together with the game becoming bigger, more stable and polished. After careful consideration, we have decided to set the new price of the game to 30 USD (or your regional equivalent). This change will become effective as of the 16th of April 2018. This is the final Factorio price update, unless something unforeseen happens, so it will also be the price for the game for 1.0 release. As you probably know we have a strict no sale policy. The game will not go on sale on Steam or any other platform. This basically means that purchasing before the 16th of April 2018 is the only way to buy the game cheaper than the increased release price.
Happy new year to everyone! We have spent the New Year's Eve with friends in our appartment / office on a last-minute improvized party. The entertainment was provided by the usual elements - food, drinks, chatting and board games. The traditional fireworks all over the Prague kickstarted the 2014, which is going to be a crucial year for Factorio. The main points from the 2014 battle plan are: Get on the Steam. Get the multiplayer done. Get some quality holidays:). After some relaxed time during the Christmas we are back to full speed development. There will be a stable release of the 0.8 in the beginning of the next week. The periods necessary for release stabilization has been getting longer and longer. That was one of the reasons we decided to dedicate more time in the future to the automated testing. You can read more on this topic in our latest random ramblings. Past week has been spent by working on the new features for the 0.9. Mainly the oil industry and blueprints. Both are still in the process of development so I will go into the functional details later, after they are more or less stabilized. You can also read our plans regarding the functionality in that random ramblings post. One thing is clear already. The 0.9 is a very ambitious release and if all goes well it will be one of our most content rich releases (if not the most content rich). After the 0.9 we plan to start working on the multiplayer which might be a long period with little other updates. Therefore we plan to get a lot done before that. In the meantime, Albert has finished with a first set of doo-dads. Below is a composition with some new shipwrecks. Actually the current shipwreck sprite in the first level was cut (and adjusted) from one of our theme art pictures (can you find it:)?). It is time for this one to be replaced. There is still much more that could be (and will be) done for the doo-dads, but now we need to move on to making graphics for the new "oil related" machines ... Comment thread is not hiding anywhere. It is right there on our forum.
Hello, Tomas is in India already, so the place is more empty again. The more empty it is, the harder we have to work to make for it :)
Hello everyone, we have been lucky that the New Years day happens to be on Friday this year. I am happy to wish you all the best for the 2016 both in the real world as well as in your factory worlds. Let the machines work smoothly, the pollution spread slowly and the biters be merciful.
Hi there, fifth anniversary for the Friday Facts is here. Nothing big, but we got into the mood of doing these updates regularly and so far it works fine. The release clock has stopped on 0.7.4. This looks pretty stable though there were still some minor annoyances and rare crashes. So the show goes on and there will be a 0.7.5. That will make the 0.7 a release with most bugfix subreleases so far. Actually Kovarex took it as sort of a challenge to fix all the bugs that are reported on our forum (which works as a kind of bug tracker for us). Now there are last four. Actually this led us to a rather interesting conversation about the bugs and our approach towards them. We have always took the stance of fixing bugs first, adding features later. This is contrary to some very popular and successful indie games out there. So we naturally wondered whether it makes sense for us to keep doing this or whether we should try to move forward faster and build more features (there is plenty on the list). The conclusion was that it is important to find a balance. Crashes and bugs which prevent someone from playing or are annoying are not tolerable and must be fixed immediately. However we will be spending less time on tiny little bugs. Things like "if you are in the god mode and select a gun turret and pause the game and open the menu, then the description of the gun turret is broken". Obviously a made up example to demonstrate the point:). We are really grateful that people are reporting even the smallest bugs, it's just that we think we need to draw a line and don't be afraid to say "this is tolerable now and we will fix it later". This will allow us to spend more time with the new features and content. Which is what we really need at the moment. On the side note the work on the trailer is in the full speed. As mentioned before we have decided to go for a not so traditional approach without scene cuts. So the trailer will basically present an existing factory by sliding the camera from one place to another. The factory is done. Actually I took the factory from one of my freeplay games and adjusted it to fit the trailer's needs. Now we work on the script logic behind it. The script controls everything. Movement around the factory, speed, zoom, dynamic adjustments to particular machines, timing of actions, etc. This is also positive because it led us to extending the Lua API - for instance we have added routines to control the trains. These changes will be available in the 0.8 together with the trailer map and the script. There is still a lot of work ahead - finishing the script, balancing the speed and flow, polishing. After all this is done we will just press a button and capture the trailer from the screen. Lastly we will need a background music and sound. We haven't arranged anything yet, but Albert has some good contacts among sound professionals who could do this for us. There probably will be some spoiler discussions regarding the trailer on our forums soon. For the impatient there is a screen shot of a possible first trailer scene below (still needs some polishing - namely new terrain and additional decorative objects). There is a link on our forum to this blog post so feel free to share your comments. To finish with the fun fact there is now over 7000 commits in the Factorio project repository. And counting.